package com.gitee.qdbp.base.system.model;

import java.util.Iterator;
import java.util.List;

public interface ICascadeResource<T extends ICascadeResource<T>> extends IResource {

    /** 子权限列表 **/
    List<T> getChildren();

    /** 子权限列表 **/
    void setChildren(List<T> children);

    /** 广度优先遍历 **/
    Iterator<T> breadthFirstIterator();

    /** 深度度优先遍历 **/
    Iterator<T> depthFirstIterator();
}
